#!/usr/bin/env bash

## 当前脚本清单（以脚本名前缀排序）
##############################  京  东  商  城  ##############################
## 短期或长期活动：

# jd_try.js                    京东试用
# jd_superBrand.js             特物Z|万物皆可国创  （每天一期新的品牌活动） 
# jd_sqdyj.js                  省钱大赢家翻翻乐（柠檬版）
# jd_sq.js                     省钱大赢家翻翻乐获取邀请码
# jx_cfdtx.js                  京喜财富岛提现
# jx_mc_coin.js                京喜牧场收集金币
# adolf_flp.js                 飞利浦电视成长记
# adolf_oneplus.js             赢一加新品手机
# adolf_superbox.js            京东超级盒子
# ddo_pk.js                    京享值PK           （新一期）
# long_half_redrain.js         半点红包雨         
# long_super_redrain.js        整点红包雨  
# long_hby_lottery.js          618主会场红包雨
# zy_618jc.js                  618手机竞猜
# zooLongzhou.js               与"粽"不同         （这个脚本名识别不正确）
# zooBaojiexiaoxiaole.js       宝洁消消乐
# zooLimitbox.js               限时盲盒

## 一次性活动脚本：（最多保留 5 天后删除）

# zooJointeam01.js             组队开卡瓜分京豆1（1张）
# zooSupershophf.js            合肥旗舰店开业

##############################  近  期  失  效  的  活  动  脚  本  ##############################
## 活动过期或脚本失效
# zooOpencard01.js             开卡1（多张）
# zooOpencard02.js             开卡2（多张）
# zooOpencard03.js             开卡3（多张）
# zooOpencard04.js             开卡4（多张）
# zooOpencard05.js             开卡5（多张）

## 脚本重复（优先lxk原则)
# ddo_joy_reward.js
# jd_super_redrain.js
# jd_half_redrain.js
# zooJx88hongbao.js

##############################  京  东  到  家  ##############################
## 短期或长期活动：
## jddj_fruit.js                京东到家 果园任务
## jddj_fruit_collectWater.js   京东到家 果园水车
## jddj_fruit_code.js           京东到家 果园获取互助码
## jddj_getPoints.js            京东到家 庄园领水滴
## jddj_bean.js                 京东到家 鲜豆任务
## jddj_plantBeans.js           京东到家 鲜豆庄园

## 京东到家需开通 "到家果园" 活动，自行挑选水果种植跟东东农场类似
## 不想薅这个APP的羊毛就忽略这些脚本，顺便把定时任务注释掉

## 京东到家账号环境变量（必填）：
## export JDDJ_COOKIE="deviceid_pdj_jd=xxxxxxxx;o2o_m_h5_sid=xxxxxxxx;"   多个账号用英文逗号隔开
## export JDDJ_CKPATH="/jd/scripts/jddj_cookie.js"                        不指定路径可能会报错

##############################  作  者  昵  称  （必填）  ##############################

author_list="jiulan LongZhuZhu adolf ZCY01 passerby-b Wenmoux zooPanda hyzaw Ariszy panghu moposmall"

##############################  作  者  脚  本  地  址  链  接   （必填）  ##############################
if [[ ${EnableExtraShellProxyDownload} == true ]]; then
  DownloadJudgment=${ExtraShellProxyUrl}
else
  DownloadJudgment=
fi

## 京喜财富岛提现（不用就把定时注释掉）
scripts_base_url_1=${DownloadJudgment}https://raw.githubusercontent.com/jiulan/platypus/main/scripts/
## 龙王，下点雨吧
scripts_base_url_2=${DownloadJudgment}https://raw.githubusercontent.com/longzhuzhu/nianyu/main/qx/
## 庙塌了，据说是一个叫袁亮的人干的，并且和尚们连夜赶路离开了这个地方，不知去向了哪里~
scripts_base_url_3=${DownloadJudgment}https://raw.githubusercontent.com/taoxin526/hjdym/main/
## 京东试用
scripts_base_url_4=${DownloadJudgment}https://raw.githubusercontent.com/ZCY01/daily_scripts/main/jd/
## 京东到家
scripts_base_url_5=${DownloadJudgment}https://raw.githubusercontent.com/passerby-b/JDDJ/main/
## Wenmoux
scripts_base_url_6=${DownloadJudgment}https://raw.githubusercontent.com/Wenmoux/scripts/master/jd/
## 庙里的信徒都来到了动物园
scripts_base_url_7=${DownloadJudgment}https://raw.githubusercontent.com/zooPanda/zoo/dev/
## ddo
scripts_base_url_8=${DownloadJudgment}https://raw.githubusercontent.com/hyzaw/scripts/main/
## 执意Ariszy
scripts_base_url_9=${DownloadJudgment}https://raw.githubusercontent.com/Ariszy/Private-Script/master/Scripts/
## 柠檬/panghu
scripts_base_url_10=${DownloadJudgment}https://raw.githubusercontent.com/panghu999/panghu/master/
## moposmall
scripts_base_url_11=${DownloadJudgment}https://raw.githubusercontent.com/moposmall/Script/main/Me/

## yangtingxiao
# scripts_base_url_?=${ExtraShellProxyUrl}https://raw.githubusercontent.com/yangtingxiao/QuantumultX/master/scripts/jd/

## 部分仓库临时启用别人 FORK 或搬运的库，能不能用我不知道，有什么问题也别问我

##############################  作  者  脚  本  名  称  （必填）  ##############################

my_scripts_list_1="jx_cfdtx.js jdJxncTokens.js"
my_scripts_list_2="long_half_redrain.js long_super_redrain.js long_hby_lottery.js"
my_scripts_list_3="adolf_flp.js adolf_oneplus.js adolf_superbox.js"
my_scripts_list_4="jd_try.js"
my_scripts_list_5="jddj_fruit.js jddj_fruit_collectWater.js jddj_bean.js jddj_plantBeans.js jddj_getPoints.js jddj_fruit_code.js jddj_cookie.js"
my_scripts_list_6="jd_superBrand.js"
my_scripts_list_7="zooBaojiexiaoxiaole.js zooLongzhou.js zooLimitbox.js zooJointeam01.js zooSupershophf.js"
my_scripts_list_8="ddo_pk.js"
my_scripts_list_9="zy_618jc.js"
my_scripts_list_10="jd_sqdyj.js jd_sq.js"
my_scripts_list_11="jx_mc_coin.js"

##############################  随  机  函  数  ##############################
rand() {
  min=$1
  max=$(($2 - $min + 1))
  num=$(cat /proc/sys/kernel/random/uuid | cksum | awk -F ' ' '{print $1}')
  echo $(($num % $max + $min))
}
cd ${ShellDir}
index=1
for author in $author_list; do
  echo -e "开始下载 $author 的活动脚本：\n"
  eval scripts_list=\$my_scripts_list_${index}
  eval url_list=\$scripts_base_url_${index}
  for js in $scripts_list; do
    eval url=$url_list$js
    echo $url
    eval name=$js
    echo $name
    wget -q --no-check-certificate $url -O scripts/$name.new

    if [ $? -eq 0 ]; then
      mv -f scripts/$name.new scripts/$name
      echo -e "更新 $name 完成...\n"
      croname=$(echo "$name" | awk -F\. '{print $1}')
      script_date=$(cat scripts/$name | grep "http" | awk '{if($1~/^[0-59]/) print $1,$2,$3,$4,$5}' | sort | uniq | head -n 1)
      if [ -z "${script_date}" ]; then
        cron_min=$(rand 1 59)
        cron_hour=$(rand 7 9)
        [ $(grep -c "$croname" ${ListCron}) -eq 0 ] && sed -i "/hangup/a${cron_min} ${cron_hour} * * * bash jd $croname" ${ListCron}
      else
        [ $(grep -c "$croname" ${ListCron}) -eq 0 ] && sed -i "/hangup/a${script_date} bash jd $croname" ${ListCron}
      fi
    else
      [ -f scripts/$name.new ] && rm -f scripts/$name.new
      echo -e "更新 $name 失败，使用上一次正常的版本...\n"
    fi
  done
  index=$(($index + 1))
done

##############################  自  定  义  命  令  ##############################

## 京东试用脚本添加取关定时任务
[ -f ${ScriptsDir}/jd_try.js ] && grep -q "5 10 \* \* \* bash jd jd_unsubscribe" ${ListCron}
if [ $? -ne 0 ]; then
  echo -e '# 京东试用脚本添加的取关定时任务\n5 10 * * * bash jd jd_unsubscribe' >>${ListCron}
fi

rm -rf ${ScriptsDir}/ddo_joy_reward.js && sed -i "/ddo_joy_reward/d" ${ListCron}
rm -rf ${ScriptsDir}/jd_super_redrain.js && sed -i "/jd_super_redrain/d" ${ListCron}
rm -rf ${ScriptsDir}/jd_half_redrain.js && sed -i "/jd_half_redrain/d" ${ListCron}
rm -rf ${ScriptsDir}/zooOpencard01.js && sed -i "/zooOpencard01/d" ${ListCron}
rm -rf ${ScriptsDir}/zooOpencard02.js && sed -i "/zooOpencard02/d" ${ListCron}
rm -rf ${ScriptsDir}/zooOpencard03.js && sed -i "/zooOpencard03/d" ${ListCron}
rm -rf ${ScriptsDir}/zooOpencard04.js && sed -i "/zooOpencard04/d" ${ListCron}
rm -rf ${ScriptsDir}/zooOpencard05.js && sed -i "/zooOpencard05/d" ${ListCron}
rm -rf ${ScriptsDir}/zooJx88hongbao.js && sed -i "/zooJx88hongbao/d" ${ListCron}